using System.Reflection;

namespace Synapse.Framework.AoP.Attributes.Core
{
    internal class InvocationArgument : IInvocationArgument
    {
        public InvocationArgument(object instance, MethodInfo methodInfo, ParameterInfo paramerterInfo, object value)
        {
            Instance = instance;
            MethodInfo = methodInfo;
            ParamerterInfo = paramerterInfo;
            Value = value;
        }

        public object Instance { get; set; }

        public MethodInfo MethodInfo { get; set; }

        public ParameterInfo ParamerterInfo { get; set; }

        public object Value { get; set; }
    }
}